using System;
using System.Runtime.InteropServices;
using System.Reflection;

namespace ClickToCall.IEEmbeddedObjectsLib
{
	/// <summary>
	/// Represents different styles of a band object.
	/// </summary>
	[Flags]
	//[Serializable]
	public enum EmbeddedObjectStyle : uint
	{
		Vertical		= 1,
		Horizontal		= 2,
		ExplorerToolbar = 4,
		TaskbarToolBar	= 8
	}
	
	/// <summary>
	/// Specifies Style of the band object, its Name(displayed in explorer menu) and HelpText(displayed in status bar when menu command selected).
	/// </summary>
	[AttributeUsage(AttributeTargets.Class)]
	public class EmbeddedObjectAttribute : System.Attribute
	{
		public EmbeddedObjectAttribute(){}

        public EmbeddedObjectAttribute(string name, EmbeddedObjectStyle style)
		{
			Name = name;
			Style = style;
		}
        public EmbeddedObjectStyle Style;
		public string Name;
		public string HelpText;
	}

    [AttributeUsage(AttributeTargets.Class)]
    public class EmbeddedToolbarObjectAttribute : System.Attribute
    {
        public EmbeddedToolbarObjectAttribute() { }

        public EmbeddedToolbarObjectAttribute(string name)
        {
            Name = name;
        }
        public string Name;
    }
}